Universal Plug and Play (UPnP) technology establishes protocols that allow networked UPnP devices to interact with each other. With UPnP, a device can dynamically join a network, obtain an Internet Protocol (IP) address, convey its capabilities, and learn about the presence and capabilities of other devices. Devices can subsequently communicate with each other directly, thereby enabling discovery and control of devices. Examples of devices that may be configured to implement UPnP protocols include computers, servers, printers, telephones, digital cameras, video recorders, Internet personal appliances, or personal digital assistants.
Typically, one UPnP device acts as a control point and another UPnP device exposes a service to that control point. A control point is an entity on the Local Area Network (LAN) that invokes an action on the service. For example, a control point may request a service to transmit data to the control point. Different categories of UPnP devices are associated with different sets of services and embedded devices. For instance, services within a DVD player are different than those within a printer. The set of services provided by a particular device, as well as a list of properties associated with the particular device, are referred to in device and service description documents that the device must host. Preferably these description documents are written in Extensible Markup Language (XML).
Due to the nature of UPnP service discovery and eventing mechanisms, UPnP technology is limited in that it is only applied to UPnP devices that are connected to a well-controlled LAN environment, where multicasting is supported. That is, UPnP does not enable devices to access one another across network boundaries such as occurs in the Internet, for example.
The increased prevalence of portable networked devices such as portable computers, devices which are usually located on the same network may become separated. For example, a laptop which can access a UPnP-based printer or media server at home will not be able to access those devices when the laptop is at a remote location, such as a coffee shop, for instance.
This Background is provided to introduce a brief context for the Summary and Detailed Description that follow. This Background is not intended to be an aid in determining the scope of the claimed subject matter nor be viewed as limiting the claimed subject matter to implementations that solve any or all of the disadvantages or problems presented above.